home *** CD-ROM | disk | FTP | other *** search
Wrap
package com.extensibility.xa; import com.extensibility.app.BaseAction; import com.extensibility.rock.RTable; import com.extensibility.rock.ScrollPop; import com.extensibility.rock.table.QlickerDataSource; import com.extensibility.util.Debug; import com.extensibility.xml.AttributeDeclaration; import com.extensibility.xml.BaseDeclaration; import java.awt.Dialog; import java.awt.event.MouseEvent; import java.util.Enumeration; import java.util.EventObject; import java.util.Vector; import javax.swing.AbstractButton; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JTable; import javax.swing.KeyStroke; import javax.swing.SwingUtilities; import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer; public final class AttrTable extends DeclTableExtra { static AttributeHeader rendHdr = new AttributeHeader(); KeyStroke keyRequired; public BaseAction toggleRequiredAction = new 1(this, "toggle.required"); String getGlobalName() { return ((AttrTableDataModel)((JTable)this).getModel()).getGlobalName(); } public JPopupMenu createCellPopup(MouseEvent var1, int var2, int var3, TableCellEditor var4) { Object var5 = super.createCellPopup(var1, var2, var3, var4); if (var3 != 3) { return (JPopupMenu)var5; } else { AggregateAttributeDecl var6 = ((AttrTableDataModel)((JTable)this).getModel()).getAggregate(var2); if (var6.isShared()) { if (var5 == null) { var5 = new ScrollPop(); } else { ((JPopupMenu)var5).addSeparator(); } CullActionListener var7 = new CullActionListener(this, var6); Enumeration var8 = var6.getAttributes(); while(var8.hasMoreElements()) { AttributeDeclaration var9 = (AttributeDeclaration)var8.nextElement(); JMenuItem var10 = ((JPopupMenu)var5).add(var9.isGlobal() ? this.getGlobalName() : var9.getOwner().getName()); ((AbstractButton)var10).addActionListener(var7); } } return (JPopupMenu)var5; } } public AttrTable(AttrTableDataModel var1) { super(var1); } public void addNotify() { super.addNotify(); AttrTableDataModel var1 = (AttrTableDataModel)((JTable)this).getModel(); this.keyRequired = KeyStroke.getKeyStroke(var1.getHeaderMnemonic(7), 8); ((JComponent)this).registerKeyboardAction(this.toggleRequiredAction, this.keyRequired, 1); } public void removeNotify() { super.removeNotify(); ((JComponent)this).unregisterKeyboardAction(this.keyRequired); } public int getInitialColumnWidth(int var1) { switch (var1) { case 2: return 100; case 3: return 80; case 4: return 80; case 5: return 120; case 6: return 100; case 7: return 0; default: return super.getInitialColumnWidth(var1); } } public double getColumnWeight(int var1) { switch (var1) { case 2: return 0.2; case 3: return 0.2; case 4: return 0.15; case 5: return (double)0.25F; case 6: return 0.2; case 7: return (double)0.0F; default: return super.getColumnWeight(var1); } } public AggregateAttributeDecl getSelectedAggregate() { int var1 = ((RTable)this).getSelectedRow(); return var1 < 0 ? null : ((AttrTableDataModel)((JTable)this).getModel()).getAggregate(var1); } public TableCellRenderer createHeaderRenderer(int var1) { return (TableCellRenderer)(var1 <= 2 ? super.createHeaderRenderer(var1) : rendHdr); } public TableCellEditor createCellEditor(int var1) { switch (var1) { case 2: return new NameQlicker((QlickerDataSource)null); case 3: return new OwnerQlicker((QlickerDataSource)((JTable)this).getModel(), this.getGlobalName()); case 4: return new TypeQlicker((QlickerDataSource)((JTable)this).getModel(), ((DeclTable)this).getSchemaDoc()); case 5: return new OptionsQlicker(((DeclTable)this).getSchemaDoc(), new OptionsQDataSource(((DeclTable)this).getSchemaDoc())); case 6: return new ValueQlicker((QlickerDataSource)null); default: return super.createCellEditor(var1); } } protected BaseDeclaration paste(BaseDeclaration var1, SchemaDoc var2, SchemaDoc var3) throws Exception { Debug.assert(var1 instanceof AggregateAttributeDecl, String.valueOf("not what I expected to be pasting: ").concat(String.valueOf(var1.getClass().getName()))); AttributeDeclaration var4 = null; Enumeration var5 = ((AggregateAttributeDecl)var1).getAttributes(); Object var6 = null; Vector var7 = new Vector(); while(var5.hasMoreElements()) { AttributeDeclaration var9 = (AttributeDeclaration)var5.nextElement(); var7.addElement(var9); } for(int var8 = 0; var8 < var7.size(); ++var8) { AttributeDeclaration var10 = (AttributeDeclaration)var7.elementAt(var8); var4 = (AttributeDeclaration)var3.insertDeclaration(var10, (BaseDeclaration)null, (Boolean)null, (Boolean)null, var2); } return var4; } public boolean showCellDialog(int var1, int var2, EventObject var3) { if (var2 == 5) { ConstraintsDialog var4 = new ConstraintsDialog(this, (JFrame)SwingUtilities.getRoot(this), ((DeclTable)this).getDeclTableModel().getSchemaDoc(), ((DeclTable)this).getDeclTableModel().getDeclaration(var1), new OptionsQlicker(((DeclTable)this).getSchemaDoc(), new OptionsQDataSource(((DeclTable)this).getSchemaDoc())), ((OptionsQlicker)((JTable)this).getCellEditor()).getText()); var4.setTableInfo(var1, var2); ((Dialog)var4).show(); return true; } else if (var2 == 6) { return super.showCellDialog(var1, var2, var3); } else { return ((DeclTableExtra)this).isExtraCol(var2) ? super.showCellDialog(var1, var2, var3) : false; } } public boolean hasCellDialog(int var1, int var2) { if (((DeclTableExtra)this).isExtraCol(var2)) { return super.hasCellDialog(var1, var2); } else { return var2 == 5 || var2 == 6; } } }